cmake_minimum_required(VERSION 3.0.2)
project(pose_graph)

add_compile_options(-std=c++14)

find_package(catkin REQUIRED COMPONENTS
  roscpp
  rospy
  std_msgs
        camera_model
        roslib
        cv_bridge
)

find_package(Ceres REQUIRED)
find_package(OpenCV REQUIRED)
find_package(glog REQUIRED)

catkin_package(
#  INCLUDE_DIRS include
#  LIBRARIES pose_graph
#  CATKIN_DEPENDS roscpp rospy std_mags
#  DEPENDS system_lib
)

###########
## Build ##
###########

## Specify additional locations of header files
## Your package locations should be listed before other locations
include_directories(
# include
  ${catkin_INCLUDE_DIRS}
        ${Ceres_INCLUDE_DIRS}
        ${OpenCV_INCLUDE_DIRS}
)
include_directories(/usr/local/include/eigen3)


add_executable(${PROJECT_NAME}_node
        src/pose_graph_node.cpp
        src/utility/utility.cpp
        src/utility/CameraPoseVisualization.cpp
        src/ThirdParty/DBoW/BowVector.cpp
        src/ThirdParty/DBoW/FBrief.cpp
        src/ThirdParty/DBoW/FeatureVector.cpp
        src/ThirdParty/DBoW/QueryResults.cpp
        src/ThirdParty/DBoW/ScoringObject.cpp
        src/ThirdParty/DUtils/Random.cpp
        src/ThirdParty/DUtils/Timestamp.cpp
        src/ThirdParty/DVision/BRIEF.cpp
        src/ThirdParty/VocabularyBinary.cpp
        src/key_frame.cpp
        src/key_frame.hpp
        src/pose_graph.cpp
        src/pose_graph.hpp
        src/utility/parameters.hpp)

 target_link_libraries(${PROJECT_NAME}_node
   ${catkin_LIBRARIES}
         ${CERES_LIBRARIES}
         ${OpenCV_LIBRARIES}
         glog
 )


